アノテーションのアプリ研修を受講した感想
アノテーション株式会社 インフラチームの山本です 入社して早2ヶ月、過ごしやすい気候になって花見が楽しみな季節になってきました🌸 今回はタイトルに記載した通り、社内のアプリ研修を2ヶ月ほど受講してきたので、その内容や感想を共有できればと思います
研修内容
今回の研修内容ではスプレッドシートを活用したGASツール、AWSを使用したサーバーレスアプリ(Python)の開発を行いました どちらの開発も題材としてはSlackのスレッド検索を行うツールになります。 使用した技術については下記になります。
- スプレッドシート連携ツール
- 実行環境: Google Apps Script
- 言語: TypeScript
- 開発環境: Vscode/Rancher Desktop/
- ツール: Clasp
- テスト: Jest
- サーバーレスアプリ
- Python + Lambda + serverless framework
- 実行環境: AWS(Lambda + S3)
- 言語: Python
- 開発環境: Vscode/Rancher Desktop/pipenv
- ツール: Serverless Framework
- テスト: pytest
その他にUdemyを活用して研修に必要なツールについて学習を行なっておりました。 また進め方としては、実装・テスト・ドキュメント作成の順で行い、その都度チーム全体でレビューをいただいておりました。
学んだこと
言語
- TypeScript
- 前職でNuxt3(Vue3)を触っていた影響で多少の馴染みがありました。型定義など色々できて使いやすい印象です。 GAS自体の開発は経験ありましたが、TypeScriptで開発するにあたってスプレッドシートの操作、GAS関連の関数などの扱いが難しかったです。
- Python
- 自身でフレームワークを使用したシステム開発を行っていたのですんなり書くことができました。boto3を使用したことがなかったのでそこが新鮮でした。
触ったことがある言語ではあったのですが、TypeScriptはそこまで知識はありませんでした。 今後はTypeScriptのコーディングについて慣れていきたいです。
テストコード
- Jest
- Jestは使用した経験がなかったのでなかなか手こずりました。GASの関数をモックする際の書き方が難しかったです。 GASのモック化は調べても出てこない箇所などがあり、チームメンバーや生成AIから得たヒントをもとにトライアンドエラーを繰り返しました。
- Pytest
- PythonのテストコードはDjangoの機能でテストコードを書いた経験があったのでそこが生きました。
テストコードを書くことで開発効率の向上やコードへの理解が深まるメリットも存在するので、テストコードについて知見も必要だと感じました。
AWS関連
AWSを触ることは今回の研修で初めてのことでした。EC2、S3、Lambdaのメジャーどころのサービスは知っていたのですがCloudFormationや、 Serverless Frameworkを用いたデプロイ方法など初めての技術に苦戦するところもありました。 SAAの勉強、社内でのAWSトレーニング講座を受講することで全体的なサービスの内容について理解を深めました。 Lambdaの実装は初めてでしたが、コーディング自体はGASのような固有の関数などはなかったので取り組みやすかったです。
まとめ
全体的な感想は非常に楽しく学ぶことができました。自身が触れていた技術や新しい知見を学べたこと、今までコードレビューを経験したことがなかったのでその点でも勉強になりました。 今回の研修内容は業務でもフル活用するので、さらに知見を増やしていこうと思います。
アノテーション株式会社について
アノテーション株式会社はクラスメソッドグループのオペレーション専門特化企業です。サポート・運用・開発保守・情シス・バックオフィスの専門チームが、最新 IT テクノロジー、高い技術力、蓄積されたノウハウをフル活用し、お客様の課題解決を行っています。当社は様々な職種でメンバーを募集しています。「オペレーション・エクセレンス」と「らしく働く、らしく生きる」を共に実現するカルチャー・しくみ・働き方にご興味がある方は、アノテーション株式会社 採用サイトをぜひご覧ください。